With advances in sensing device technology, measuring the position and surrounding environment of a user has become easier. From such measurement data, various types of context can be obtained, and use of this context aids in the execution of a task for the user. Such context represents information indicative of the situation of a person and/or a thing. For example, the context of a user A is information indicating the name of an office, which represents the current location of the user A, the current time, etc. A task means work that is to be executed by the user, a terminal of the user, or a peripheral device of the user. For example, when the user enters a room, a task may be “to turn on lights in the room”, and when the user prints out documents, a task may be “to print sentences using a printer nearby”.
According to a conventional technique related to task execution support using context, in a content distribution network, the content desired by a user is moved to storage near an access point for the user, based on context information of the user (information indicating the user's position, a network use status, a work status), to perform load distribution (see, for example, Japanese Laid-Open Patent Publication No. 2004-348495). According to another conventional technique, in a presence service of displaying on a terminal, context information of a user (circumstances of a person on the other side of the phone line), a suitable presence information providing application is executed according to the context of the user (see., for example, Japanese Laid-Open Patent Publication No. 2008-282068).
According to the conventional techniques, however, a service provided by a peripheral device for executing a task cannot be confirmed, and therefore, a suitable task cannot be selected by the service provided by the peripheral device. This service represents a function that is provided by the peripheral device and has low granularity, such as a service performed through the Universal Plug and Play (UPnP) protocol. A specific example of such a service is printing by a printer, etc.
The conventional techniques offer a system that assumes execution of a single task only. As a result, when multiple tasks are present, the system cannot select and execute a task in an execution order determined by considering the context of the user and therefore, cannot efficiently execute the service desired by the user. The service desired by the user is assumed to be a service made up of a combination of tasks or each different service that the user enjoys at different locations to which the user moves. The system of the conventional techniques cannot support such a service.